Ahrefs不上云,省下四亿美元
最近云计算在 IT 基础设施领域非常流行,上云成为一种趋势。基础设施即服务云(IaaS)确实有很多优点:灵活、部署敏捷、伸缩简便、在全球多地区都能即时上线,等等等等。
云服务提供商已经成为专业的 IT 服务外包供应商,提供便捷且易用的服务 —— 通过出色的营销、会议、认证和精心挑选的使用案例,他们很容易让人以为,云计算是现代企业 IT 的唯一合理选择。
但是,这些外包云计算服务的成本,有时高到离谱,高到我们担心如果基础设施 100% 依赖云计算,我们的业务是否还能存在。这促使我们基于事实,进行实际的比较。以下是比较结果:
Ahrefs 自有硬件概览
Ahrefs 在新加坡租用了一个托管数据中心 —— 高度同质化的标准基础设施。我们核算了这个数据中心的所有成本,并分摊到每台服务器上,然后与 Amazon Web Services (AWS) 云中进行类似的规格进行了成本对比(因为 AWS 是 IaaS 领导者,所以我们将其用作对比的标杆)
Ahrefs 服务器
我们的硬件相对较新。托管合同始于 2020 年中 —— 即 COVID-19 疫情高峰期。所有设备也都是从那时候起新买的。我们在该数据中心的服务器配置基本都是一致的,唯一的区别是 CPU 有两种代际,但核数相同。我们每台服务器都有很高的核数,2TB 内存和两个 100G 网口,硬盘的话,平均每台服务器有16块 15TB 的硬盘。
为了计算每月成本,我们把所有硬件按五年摊销归零核算,超过五年后继续用算白赚。因此这些设备的 启动成本,会摊销到 60 个月中进行核算。
所有的 持续性成本,例如租金和电费,均以 2022 年 10 月的价格计算。尽管通货膨胀也会有影响,但这里把通胀算上就太复杂了,所以我们先忽略通胀因素。
我们的托管费用由两部分组成:租金,以及 实际消耗的电费。自 2022 年初以来,电价大幅上涨。我们计算的时候使用的是最新的高电价,而不是整个租赁周期的的平均电价,这样计算上会让 AWS 占些便宜。
此外,我们还要支付 IP 网络传输费用,和数据中心与我们驻地之间的暗光纤费用(暗光纤:已经铺设但是没有投入使用的光缆)。
下表显示了我们每台服务器的月度支出。服务器硬件占整体月度支出的 2/3,而数据中心租金和电费 (DC)、互联网服务提供商 (ISP) 的 IP 传输费用、暗光纤 (DF) 和内部网络硬件 (Network HW) 构成了剩余的三分之一。
AWS 成本结构
由于我们托管的数据中心位于新加坡,所以我们使用 AWS 亚太地区(新加坡)区域的价格进行对比。
AWS 的成本结构与托管中心不同。不幸的是,AWS 没有提供与我们服务器核数相匹配的 EC2 服务器实例。因此,我们找到了CPU & 内存正好是一半的相应 AWS 实例,然后将一台 Ahrefs 服务器的成本,与两台这种 EC2 实例的成本进行对比。
译注:EC2 定价正比与核数与内存配比,这样成本对比没有问题
此外我们考虑了长期折扣,因此我们使用 EC2 实例的最低价格 —— 三年预留,与五年摊销的本地自建服务器进行对比。
译注:AWS EC2 三年 Reserved All Upfront 即提供最好的折扣
除了 EC2 实例外,我们还添加了弹性块存储 (EBS) ,它并不是直接附加存储的精准替代品 —— 因为我们在服务器中使用的是大容量且快速的 NVMe 盘。为了简化计算,我们选择了更便宜的 gp3 EBS(尽管这种盘速度比我们的慢很多)。其成本由两部分组成:存储大小和 IOPS 费用。
译注:EBS
gp3
延迟在 ms 量级,io2
在百微秒量级,本地盘在 55/9µs 量级
因为我们自己用磁盘的时候会复制一份,但是买 EBS 的时候只买实际存储空间,EBS 替你处理数据复制。所以在成本对比时,我们购买的 gp3
存储大小是本地磁盘的一半:(1TB + 15TB 16块) / 2 ≈ 每台服务器 120TB。
我们还没有把 IOPS 的成本算进来,也忽略了 EBS gp3 的各种限制;例如,gp3 云盘的最大吞吐量/实例为 10GB/s。而单个 PCIe Gen 4 NVMe 驱动器的性能为 6-7GB/s,而我们有 16 个并行工作的磁盘,总吞吐要大得多。因此,这完全不是一个维度上的公平比较。这种比较方法显著低估了 AWS 上的存储成本,并进一步让 AWS 在比较中占尽便宜。
关于网络流量费用,AWS 与托管机房不同,AWS 不是按照带宽来计费的,而是按每GB下行流量来收费。因此,我们大致估算了每台服务器的平均下行流量,然后使用 AWS 网络计费方法进行估算。
将所有三项成本组合起来,我们得到了 AWS 上的的成本分布,如下表所示
自建与AWS对比
综合以上两个表格不难看出,AWS 上的支出比想象中要高得多。
在 AWS 上一台具有相似可用 SSD 空间的替代 EC2 实例的成本,大致相当于托管数据中心中 11.3 台服务器的成本。相应来说,如果上了云,我们这 20 台服务器的机架就只能剩下大约 2 台服务器了!
20 台 Ahrefs 服务器的成本与 2 台 AWS 服务器相当
那么用我们在自建数据中心里实际使用了两年半的这 850 台服务器来计算,算出总成本数字后,不难看到极其惊人的差异!
假设我们在实际的 2.5 年数据中心使用期间运行 850 台服务器。计算后可以看到显著的差异。
如果我们选择在 2020 年使用新加坡区域的 AWS,而不是自建,那我们需要向 AWS 支付 超过 4 亿美元 这样一笔天文数字 ,才能让自己的基础设施跑起来!
有人可能会想,“或许 Ahrefs 能付得起?”
确实,Ahrefs 是一家盈利且自给自足可持续的公司,所以让我们来看一下它的营收,并算一算。尽管我们是一家私有公司,不必公布我们的财务数据。但在《海峡时报》关于 2022[1] 年和 2023[2] 年新加坡增长最快的公司的文章中可以找到一些 Ahrefs 的收入信息。这些文章提供了 Ahrefs 在 2020 年和 2021 年的收入数据。
我们还可以线性外推出 2022 年的收入。这是一个粗略估计,但足以让我们得出一些结论了。
从上表可以看出,Ahrefs 在过去三年的总收入约为 2.57 亿美元。但我们也计算出,如果将这样一个自建数据中心替换为 AWS,成本约为 4.48 亿美元。因此,公司收入甚至无法覆盖这 2.5 年的 AWS 使用成本。
这是一个令人震惊的结果!
但是我们的利润会去哪儿呢?
正如波音公司 Dr. LJ Hart-Smith 在这份 已有 20 年历史的报告[3]中所述:“如果原厂或总包商无法通过将工作外包来获利,那么谁会受益呢?当然是分包商。”
需要记住的是,我们已经在计算时让 AWS 占尽便宜了 —— 自建数据中心算电费时使用高于平均水平的电价,算EBS 云盘存储价格时只算了空间部分没算 IOPS,并无视了 EBS 其实非常拉垮的慢。而且,这个数据中心并不是我们唯一的成本中心。我们在其他数据中心、服务器、服务、人员、办公室、营销活动上也有支出。
因此,如果我们主要的基础设施放在云上,Ahrefs 几乎无法生存。
其他考虑因素
为了不让比较变得太过负载,这篇文章没有考虑其他方面:人员技能、财务控制、现金流、根据负载类型进行的容量规划等。
结论
Ahrefs 省下了约 4 亿美元,因为在过去的两年半中,基础设施没有 100% 上云。这个数字还在增加,因为目前我们又在一个新地方,用新硬件搞了另一个大型托管数据中心。
Ahrefs 利用 AWS 的优势,在世界各地托管我们的前端,但 Ahrefs 基础设施的绝大部分,隐藏在托管数据中心的自有硬件上。如果我们的产品完全依赖 AWS,Ahrefs 将无法盈利,甚至无法存在。
如果我们采用只用云的方式,我们的基础设施成本将高出 10 倍以上。但正因为我们没有这样做,我们可以将节省下来的资金,用于实际的产品改进和开发。而且也带来了更快、更好的结果 —— 因为(考虑到云上的限制),我们的服务器比云计算能提供的速度更快。我们的报表也生成得更快且更全面,因为每份报告所需的时间更短。
基于此,我建议那些对可持续增长感兴趣的 CFO、CEO 和企业主们,仔细考虑并定期重新评估云计算的优势与实际成本。虽然云计算是早期创业公司的自然选择,或者说 100% 吧。但随着公司及其基础设施的增长,完全依赖云计算可能会使公司陷入困境。
而这里就出现了两难:
一旦上了云,想要离开是很复杂的。云计算很方便,但会带来供应商锁定。而且,仅仅是出于更高的成本而放弃云计算基础设施,可能并不是工程团队想要的。他们可能会正确地认为 —— 云计算比传统的砖瓦数据中心和物理服务器环境更容易、更灵活。
对于更成熟阶段的公司,下云迁移到自有基础设施是困难的[4]。在迁移过程中保持公司生存也是一个挑战。但这种痛苦的转变可能是拯救公司的关键,因为它可以避免将收入越来越多的一部分不断支付给云厂商。
大公司,尤其是 FAANG 多年来吸走了大量人才。他们一直在招聘工程师来运营他们庞大的数据中心和基础设施,给小公司留下的机会很少。但最近几个月大科技公司的大规模裁员,带来了重新评估云计算的机会 —— 确实可以考虑一下招聘数据中心领域资深专业人士,并从云上搬迁下来。
如果你要创办一家新公司,考虑一下这种方案:买个机架和服务器,把它们放在你家的地下室。也许这样能从第一天起就提高你们公司的可持续性。
原文:How Ahrefs Saved US$400M in 3 Years by NOT Going to the Cloud[5]
References
[1]
2022: https://www.straitstimes.com/fastest-growing-companies-2022[2]
2023: https://www.straitstimes.com/fastest-growing-companies-2023[3]
已有 20 年历史的报告: https://www.documentcloud.org/documents/69746-hart-smith-on-outsourcing.html[4]
下云迁移到自有基础设施是困难的: https://world.hey.com/dhh/we-stand-to-save-7m-over-five-years-from-our-cloud-exit-53996caa[5]
How Ahrefs Saved US$400M in 3 Years by NOT Going to the Cloud: https://tech.ahrefs.com/how-ahrefs-saved-us-400m-in-3-years-by-not-going-to-the-cloud-8939dd930af8
下云老冯评论
很高兴又看到一个难以忍受天价云租金的大客户站出来,发起对云厂商的控诉。 Ahrefs 的经验与我们一致 —— 云上服务器的综合持有成本在是本地自建的 10 倍左右 —— 即使考虑了最好的 Saving Plan 与深度折扣。37 Signal 的 DHH 则提供了另一个更有代表性的下云案例。
同时在 Ahrefs 成本核算中我们不难看出成本的结构化差异 —— 自建的存储成本是服务器成本的一半,而云上的存储成本却是服务器成本的一倍 —— 我有一篇文章专门聊过这个问题 —— 云盘是不是杀猪盘?
在几个关键例子上,云的成本都极其高昂 —— 无论是大型物理机数据库、大型 NVMe 存储,或者只是最新最快的算力。在这些用例上,云上的客户不得不忍受高昂到荒诞的定价带来的羞辱 —— 租生产队的驴所花的钱是如此高昂,以至于几个月甚至几周的租金就能与直接购买它的价格持平。在这种情况下,你应该直接直接把这头驴买下来,而不是给赛博领主交租!
曾几何时,“上云“近乎成为技术圈的政治正确,整整一代应用开发者的视野被云遮蔽。就让我们用实打实的数据分析与亲身经历,讲清楚公有云租赁模式的价值与陷阱 —— 在这个降本增效的时代中,供您借鉴与参考。
很多开发者并没有意识到,底层硬件已经出现了翻天覆地的变化,性能与成本以指数方式增长与降低。许多习以为常的工作假设都已经被打破,无数利弊权衡与架构方案值得重新思索与设计。
我们认为,公有云有其存在意义 —— 对于那些非常早期、或两年后不复存在的公司,对于那些完全不在乎花钱、或者真正有着极端大起大落的不规则负载的公司来说,对于那些需要 出海合规,CDN 等服务的公司来说,公有云仍然是非常值得考虑的服务选项。